1. Technical Field
The present invention relates generally to power/performance measurement and management in processing systems, and more particularly, to an estimation scheme that can predict a measure of computing performance from a specified power budget.
2. Description of the Related Art
Vendors of multiple processor servers and other medium to large-scale data processing systems are finding it increasingly necessary to incorporate sophisticated power measurement and management subsystems within such computer systems. In particular, budgetary power management is employed in groups of server systems located in racks or facilities with fixed power limits or where control of overall power consumption is desirable for thermal or economic reasons. Further, under power supply fault conditions, it is possible to continue operating at a lower power level when multiple power supplies are available and one of them has failed.
Even uniprocessor workstation systems, such as notebook computers that employ selectable or automatically selected power conservation modes, may benefit from power monitoring and control software that controls the power consumption of the system. In particular, specifying an upper bound on power consumption in a battery operated system determines an absolute minimum battery life.
In the multi-processor server systems described above, control of the power can be achieved by sophisticated power management solutions that include techniques such as dynamically adjusting the frequencies of the processors within the system to ensure that a power budget is maintained. Simultaneously, system designers and operators are be provided with the ability to set different power budgets (at design-time and run-time) to meet their environmental and cost constraints using emerging power management solutions. However, automatic control of the system performance by the dynamic power management solutions mentioned above makes it difficult to predict how power management will affect performance for a given workload, as the power control system will dynamically change the performance of the system in order to maintain a specified power budget.
Systems operators and architects need to know how particular power budgets will affect the processing performance of a system and in particular how the actual workload actually executing on the system will be affected by a power budget. The actual impact of an imposed power budget depends on complex relationship between the workload, the specific power budget, the control algorithm used to enforce the budget, and characteristics of the particular processing system. For example, a power budget may hardly affect system power/performance at one level, but another nearly identical power/performance level may have a more severe impact on the system. Since the behavior is non-linear in general and related to the specific workload(s), a lack of knowledge of the relationship between power budgets and performance can cause the system operator or architect to set a power budget that is undesirable.
Rough power/performance estimations can be accomplished by running a workload at each power-performance state while taking power measurements and performance measurements. The state with the highest performance that meets the power budget is used as an estimation of the performance of similar workloads under the same power budget. However, such analyses do not give accurate estimations of performance for system that take advantage of automatic, adaptive control mechanisms that meet power budgets by employing dynamically-changing multiple power states that provide a more energy-efficient and/or higher-performance solution.
Linear regression and other modeling techniques have been used to relate system performance to operating power levels, or vice-versa, so that performance can be roughly estimated for a performance level that will meet a power budget under all conditions. However, such estimating techniques will underestimate the actual performance for a given power budget of a system having closed-loop power that adjusts the performance level of the system dynamically.
It is therefore desirable to provide a method and system for estimating processing performance from a specified power budget in a processing system having closed-loop power/performance control. It is further desirable to provide such a method and system that provide a realistic estimate with respect to the actual workload being executed by the processing system.